iT邦幫忙

2021 iThome 鐵人賽

DAY 18
0

對於其他人沒什麼用的我的 git cheatsheet。
感覺還是要有情境呢..

git log --oneline -g

blame

blame
blame -L 5,10

checkout

checkout .
checkout <file>
從 staging area 拿回檔案,如果 <file> 不曾被 track 會 error
checkout <file> HEAD^^

checkout --ours <file>
checkout --theirs <file>

reset

reset
[[git reset]]
--soft resets the head to commit
--mixed 預設。resets the index. 所以 working tree 沒被動到。
--hard resets the index and working tree.
git reset e12d8ef^^ ^代表回去幾次
相等於 git reset e12d8ef~2
git reflog git log -g 可以看到 head 被移動的紀錄。

diff

detached HEAD
git diff working tree and index
git diff --cached HEAD index 和 head

stash

【狀況題】手邊的工作做到一半,臨時要切換到別的任務
stash list
stash apply stash@{0}
stash drop stash@{0}
stash pop stash@{0}

pull / fetch

Pull 下載更新
pull = fetch + merge
Pull 指令其實就是去上線抓東西下來(Fetch),並且更新本機的進度(Merge)而已。
【狀況題】怎麼有時候推不上去…
pull --rebase

remote

【狀況題】怎麼跟上當初 fork 專案的進度?
remote -v verbose
remote add <upstreamname> <giturl>


上一篇
【Day 17】分散式資料庫 High Availability 初探
下一篇
【Day 19】瞄瞄 Python 標準函式庫
系列文
什麼都不會還敢說你是 RD 啊?畢業後的後端入職前準備31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言